Programming Language Design for Event-Driven Service Composition
نویسندگان
چکیده
To adapt to rapidly changing market conditions and increase the return of investment, today’s IT solutions usually combine service-oriented architecture (SOA) and event-driven architecture (EDA) that support reusability, flexibility, and responsiveness of business processes. Programming languages for development of event-driven service compositions face several main challenges. First, a language should be based on standard service composition languages to be compatible with SOA-enabling technologies. Second, a language should enable seamless integration of services into event-driven workflows. Third, to overcome a knowledge divide, language should enable seamless cooperation between application developers with different skills and knowledge. Since WS-BPEL is widely accepted as standard executable language in SOA, we extended WS-BPEL with support for event-driven workflow coordination. We designed event-handling mechanisms as special-purpose Coopetition services and augmented WS-BPEL with primitives for their invocation. Coopetition services augment SOA with fundamental EDA characteristics: decoupled interactions, many-to-many communication, publish/subscribe messaging, event triggering, and asynchronous operations. To make the application development familiar to wide community of developers, we designed an application-level end-user language on top of WS-BPEL whose primitives for invocation of regular Web services and Coopetition services resemble the constructs of typical scripting and coordination language.
منابع مشابه
Programming Languages for End-User Personalization of Cyber-Physical Systems
The increased usage of smart devices and appliances opens new venues to build applications that integrate physical and virtual world into consumer-oriented context-sensitive cyber-physical systems (CPS). Since physical processes are dynamic, concurrent, event-driven, and powered by various sensors, controllers, and actuators, a combination of service-oriented architecture (SOA) and event-driven...
متن کاملTowards Formal Verification of Web Service Composition
Web services composition is an emerging paradigm for enabling application integration within and across organizational boundaries. Current Web services composition proposals, such as BPML, WSBPEL, WSCI, and OWL-S, provide solutions for describing the control and data flows in Web service composition. However, such proposals remain at the descriptive level, without providing any kind of mechanis...
متن کاملFlow-Design and Event-Based Components: A New Approach in Designing Software Compared to Established Procedures
Flow-Design is a new approach in developing software architectures, which focuses on data processing function units and the communication among them. Event-Based Components represent a programming language independent methodology for implementing Flow-Design and can also be considered as a resulting software architecture. The Event-Based Components software architecture is structured by compone...
متن کاملVerifying Composite Service Transactional Behavior Using Event Calculus
A key challenge of Web service (WS) composition is how to ensure reliable execution. The lack of techniques that support non-functional features such as execution reliability is widely recognized as a barrier preventing widespread adoption. Therefore, there is a growing interest for verification techniques which help to prevent WS composition execution failures. In this paper, we propose an eve...
متن کاملModel-Driven Approaches to Service Composition
Companies are now making their know-how and information available over the network using Web services. Business-to-Business collaboration through Web service interaction is now a necessary step to better satisfy user requests. The act of combining Web services to achieve a common goal also known as Web service composition is a complex issue that should be addressed. Many programming languages w...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011